/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package entities;

import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;

/**
 *
 * @author The Lunatics
 */
@Entity
@Table(name = "nflplayerseasonstat")
@XmlRootElement
@NamedQueries({
    @NamedQuery(name = "Nflplayerseasonstat.findAll", query = "SELECT n FROM Nflplayerseasonstat n"),
    @NamedQuery(name = "Nflplayerseasonstat.findByPlayerId", query = "SELECT n FROM Nflplayerseasonstat n WHERE n.nflplayerseasonstatPK.playerId = :playerId"),
    @NamedQuery(name = "Nflplayerseasonstat.findBySeason", query = "SELECT n FROM Nflplayerseasonstat n WHERE n.nflplayerseasonstatPK.season = :season"),
    @NamedQuery(name = "Nflplayerseasonstat.findByTeamId", query = "SELECT n FROM Nflplayerseasonstat n WHERE n.teamId = :teamId"),
    @NamedQuery(name = "Nflplayerseasonstat.findByPassingYards", query = "SELECT n FROM Nflplayerseasonstat n WHERE n.passingYards = :passingYards"),
    @NamedQuery(name = "Nflplayerseasonstat.findByPassingTouchdowns", query = "SELECT n FROM Nflplayerseasonstat n WHERE n.passingTouchdowns = :passingTouchdowns"),
    @NamedQuery(name = "Nflplayerseasonstat.findByRushingYards", query = "SELECT n FROM Nflplayerseasonstat n WHERE n.rushingYards = :rushingYards"),
    @NamedQuery(name = "Nflplayerseasonstat.findByInterceptions", query = "SELECT n FROM Nflplayerseasonstat n WHERE n.interceptions = :interceptions"),
    @NamedQuery(name = "Nflplayerseasonstat.findByRushingTouchdowns", query = "SELECT n FROM Nflplayerseasonstat n WHERE n.rushingTouchdowns = :rushingTouchdowns"),
    @NamedQuery(name = "Nflplayerseasonstat.findByReceivingYards", query = "SELECT n FROM Nflplayerseasonstat n WHERE n.receivingYards = :receivingYards"),
    @NamedQuery(name = "Nflplayerseasonstat.findByReceivingTouchdowns", query = "SELECT n FROM Nflplayerseasonstat n WHERE n.receivingTouchdowns = :receivingTouchdowns"),
    @NamedQuery(name = "Nflplayerseasonstat.findByFumbleTouchdowns", query = "SELECT n FROM Nflplayerseasonstat n WHERE n.fumbleTouchdowns = :fumbleTouchdowns"),
    @NamedQuery(name = "Nflplayerseasonstat.findByFieldGoalsMade", query = "SELECT n FROM Nflplayerseasonstat n WHERE n.fieldGoalsMade = :fieldGoalsMade"),
    @NamedQuery(name = "Nflplayerseasonstat.findByAssistedTackles", query = "SELECT n FROM Nflplayerseasonstat n WHERE n.assistedTackles = :assistedTackles"),
    @NamedQuery(name = "Nflplayerseasonstat.findByDefensiveTouchdowns", query = "SELECT n FROM Nflplayerseasonstat n WHERE n.defensiveTouchdowns = :defensiveTouchdowns"),
    @NamedQuery(name = "Nflplayerseasonstat.findBySacks", query = "SELECT n FROM Nflplayerseasonstat n WHERE n.sacks = :sacks"),
    @NamedQuery(name = "Nflplayerseasonstat.findByKickReturnTouchdowns", query = "SELECT n FROM Nflplayerseasonstat n WHERE n.kickReturnTouchdowns = :kickReturnTouchdowns"),
    @NamedQuery(name = "Nflplayerseasonstat.findByFantasyPoints", query = "SELECT n FROM Nflplayerseasonstat n WHERE n.fantasyPoints = :fantasyPoints")})
public class Nflplayerseasonstat implements Serializable {

    private static final long serialVersionUID = 1L;
    @EmbeddedId
    protected NflplayerseasonstatPK nflplayerseasonstatPK;
    @Column(name = "teamId")
    private Integer teamId;
    // @Max(value=?)  @Min(value=?)//if you know range of your decimal fields consider using these annotations to enforce field validation
    @Column(name = "PassingYards")
    private Float passingYards;
    @Column(name = "PassingTouchdowns")
    private Integer passingTouchdowns;
    @Column(name = "RushingYards")
    private Float rushingYards;
    @Column(name = "Interceptions")
    private Integer interceptions;
    @Column(name = "RushingTouchdowns")
    private Integer rushingTouchdowns;
    @Column(name = "ReceivingYards")
    private Float receivingYards;
    @Column(name = "ReceivingTouchdowns")
    private Integer receivingTouchdowns;
    @Column(name = "FumbleTouchdowns")
    private Integer fumbleTouchdowns;
    @Column(name = "FieldGoalsMade")
    private Integer fieldGoalsMade;
    @Column(name = "AssistedTackles")
    private Integer assistedTackles;
    @Column(name = "DefensiveTouchdowns")
    private Integer defensiveTouchdowns;
    @Column(name = "Sacks")
    private Float sacks;
    @Column(name = "KickReturnTouchdowns")
    private Integer kickReturnTouchdowns;
    @Column(name = "FantasyPoints")
    private Float fantasyPoints;

    public Nflplayerseasonstat() {
    }

    public Nflplayerseasonstat(NflplayerseasonstatPK nflplayerseasonstatPK) {
        this.nflplayerseasonstatPK = nflplayerseasonstatPK;
    }

    public Nflplayerseasonstat(int playerId, int season) {
        this.nflplayerseasonstatPK = new NflplayerseasonstatPK(playerId, season);
    }

    @XmlElement(name = "NflplayerseasonstatPK")
    public NflplayerseasonstatPK getNflplayerseasonstatPK() {
        return nflplayerseasonstatPK;
    }

    public void setNflplayerseasonstatPK(NflplayerseasonstatPK nflplayerseasonstatPK) {
        this.nflplayerseasonstatPK = nflplayerseasonstatPK;
    }

    @XmlElement(name = "TeamId")
    public Integer getTeamId() {
        return teamId;
    }

    public void setTeamId(Integer teamId) {
        this.teamId = teamId;
    }

    @XmlElement(name = "PassingYards")
    public Float getPassingYards() {
        return passingYards;
    }

    public void setPassingYards(Float passingYards) {
        this.passingYards = passingYards;
    }

    @XmlElement(name = "PassingTouchdowns")
    public Integer getPassingTouchdowns() {
        return passingTouchdowns;
    }

    public void setPassingTouchdowns(Integer passingTouchdowns) {
        this.passingTouchdowns = passingTouchdowns;
    }

    @XmlElement(name = "RushingYards")
    public Float getRushingYards() {
        return rushingYards;
    }

    public void setRushingYards(Float rushingYards) {
        this.rushingYards = rushingYards;
    }

    @XmlElement(name = "Interceptions")
    public Integer getInterceptions() {
        return interceptions;
    }

    public void setInterceptions(Integer interceptions) {
        this.interceptions = interceptions;
    }

    @XmlElement(name = "RushingTouchdowns")
    public Integer getRushingTouchdowns() {
        return rushingTouchdowns;
    }

    public void setRushingTouchdowns(Integer rushingTouchdowns) {
        this.rushingTouchdowns = rushingTouchdowns;
    }

    @XmlElement(name = "ReceivingYards")
    public Float getReceivingYards() {
        return receivingYards;
    }

    public void setReceivingYards(Float receivingYards) {
        this.receivingYards = receivingYards;
    }

    @XmlElement(name = "ReceivingTouchdowns")
    public Integer getReceivingTouchdowns() {
        return receivingTouchdowns;
    }

    public void setReceivingTouchdowns(Integer receivingTouchdowns) {
        this.receivingTouchdowns = receivingTouchdowns;
    }

    @XmlElement(name = "FumbleTouchdowns")
    public Integer getFumbleTouchdowns() {
        return fumbleTouchdowns;
    }

    public void setFumbleTouchdowns(Integer fumbleTouchdowns) {
        this.fumbleTouchdowns = fumbleTouchdowns;
    }

    @XmlElement(name = "FieldGoalsMade")
    public Integer getFieldGoalsMade() {
        return fieldGoalsMade;
    }

    public void setFieldGoalsMade(Integer fieldGoalsMade) {
        this.fieldGoalsMade = fieldGoalsMade;
    }

    @XmlElement(name = "AssistedTackles")
    public Integer getAssistedTackles() {
        return assistedTackles;
    }

    public void setAssistedTackles(Integer assistedTackles) {
        this.assistedTackles = assistedTackles;
    }

    @XmlElement(name = "DefensiveTouchdowns")
    public Integer getDefensiveTouchdowns() {
        return defensiveTouchdowns;
    }

    public void setDefensiveTouchdowns(Integer defensiveTouchdowns) {
        this.defensiveTouchdowns = defensiveTouchdowns;
    }

    @XmlElement(name = "Sacks")
    public Float getSacks() {
        return sacks;
    }

    public void setSacks(Float sacks) {
        this.sacks = sacks;
    }

    @XmlElement(name = "KickReturnTouchdowns")
    public Integer getKickReturnTouchdowns() {
        return kickReturnTouchdowns;
    }

    public void setKickReturnTouchdowns(Integer kickReturnTouchdowns) {
        this.kickReturnTouchdowns = kickReturnTouchdowns;
    }

    @XmlElement(name = "FantasyPoints")
    public Float getFantasyPoints() {
        return fantasyPoints;
    }

    public void setFantasyPoints(Float fantasyPoints) {
        this.fantasyPoints = fantasyPoints;
    }

    @Override
    public int hashCode() {
        int hash = 0;
        hash += (nflplayerseasonstatPK != null ? nflplayerseasonstatPK.hashCode() : 0);
        return hash;
    }

    @Override
    public boolean equals(Object object) {
        // TODO: Warning - this method won't work in the case the id fields are not set
        if (!(object instanceof Nflplayerseasonstat)) {
            return false;
        }
        Nflplayerseasonstat other = (Nflplayerseasonstat) object;
        if ((this.nflplayerseasonstatPK == null && other.nflplayerseasonstatPK != null) || (this.nflplayerseasonstatPK != null && !this.nflplayerseasonstatPK.equals(other.nflplayerseasonstatPK))) {
            return false;
        }
        return true;
    }

    @Override
    public String toString() {
        return "entities.Nflplayerseasonstat[ nflplayerseasonstatPK=" + nflplayerseasonstatPK + " ]";
    }
}
